package main

import "fmt"

/*
可以在slcie尾部追加元素
可以讲一个slice追加在另一个slice尾部
如果最终长度未超过追加到slice的容量则返回原始slice
如果超过追加到的slice的容量则将重新分配数组并拷贝原始数据
 */
func main() {
	s1 := make([]int, 3, 6)
	fmt.Printf("%p\n", s1)
	s1 = append(s1, 1,2,3)
	fmt.Printf("%v %p\n", s1, s1)
	s1 = append(s1, 1,2,3)
	fmt.Printf("%v %p\n", s1, s1)

	a := [5]int{1,2,3,4,5}
	p1 := a[1:3]
	p1 = append(p1, 9,8,7,6,5,4,3,2,1)
	fmt.Println(a)
	fmt.Println(p1)
}